Systems and methods of real-time ambient light simulation based on generated imagery

ABSTRACT

Systems and methods for simulation of ambient light based on generated imagery are disclosed herein. Such a system can include a simulation sled, a simulation display that can display generated imagery viewable from the simulation sled, an ambient light simulator that can selectively illuminate portions of the simulation sled, and a processor. The simulation sled can include a plurality of user controls. The processor can: control the simulation display to generate imagery; identify an effect of the generated imagery on the simulation sled; and control the ambient light simulator to selectively illuminate at least portions of the simulation sled according to the identified effect of the simulated light source.

BACKGROUND

The present disclosure relates generally to the creation of a simulatedexperience. A simulation is the imitation of a real-world process orevent over time, or the imitation of an imaginary process or event overtime. Simulations can include, for example, a simulation of operation ofa vehicle such as a car, an airplane, a boat, or a spaceship.

In a simulation, care is given to recreate the complete real experiencein the simulated environment. This can include the creation of asimulation sled that has the appearance of, for example, the inside of acar, an airplane, a boat, or a spaceship. This can include havingsimilar or identical controls or control layouts. In many instances, thecreation of a simulation can further include the generation of one orseveral effects including sound effects, movement effects, and lightingeffects to increase the realism of the simulation.

The difficulty of the generation of these effects has increased overtime due in part to higher demands for realism, but also due to theincreasing complication of simulations. The complexity of a simulationis particularly increased when the simulation is, on-the-fly, changedbased on received user inputs. This prevents the generation of a smallset of effects and then the repeated use of those effects as scenariosgiving rise to those effects may not be repeated. Therefore, it isdesirable to provide new systems and methods for improving simulationsand the effects used in those simulations.

BRIEF SUMMARY

Embodiments can provide systems and methods for real-time ambient lightsimulation based on generated imagery. This can particularly includeidentifying one or several light-generating objects in to be generatedimagery and generating an ambient light simulation corresponding to adetermined effect of those one or several light-generating objects. Theambient light simulation can create one or several simulated illuminatedareas or shadows.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustration of one embodiment of a simulationsystem for simulation of ambient light based on generated imagery.

FIG. 2 is a schematic illustration of one embodiment of a simulationenvironment.

FIG. 3 is an illustration of one embodiment of a passenger area of asimulation sled in a simulation environment.

FIG. 4 is a flowchart illustrating one embodiment of a process forsimulation of ambient light based on generated imagery.

FIG. 5 is a block diagram of a computer system or information processingdevice that may incorporate an embodiment, be incorporated into anembodiment, or be used to practice any of the innovations, embodiments,and/or examples found within this disclosure.

DETAILED DESCRIPTION

The ensuing description provides illustrative embodiment(s) only and isnot intended to limit the scope, applicability or configuration of thedisclosure. Rather, the ensuing description of the illustrativeembodiment(s) will provide those skilled in the art with an enablingdescription for implementing a preferred exemplary embodiment. It isunderstood that various changes can be made in the function andarrangement of elements without departing from the spirit and scope asset forth in the appended claims.

I. Introduction

Simulation of activity presents many difficulties. These difficultieshave only increased over time as common exposure to, and experience withgaming and virtual activities have increased. One problem in asimulation arises from the insufficiency of light coming from asimulated object or a simulated effect to illuminate real objects. Forexample, while a simulated sun, a simulated neon sign, or simulatedexplosion can be displayed on a screen, that simulated sun, simulatedneon sign, or simulated explosion may not cause the real effects ofilluminating real objects sufficiently to cast shadows or to heat thosereal objects. Thus a user in a simulation with the simulated sun, thesimulated neon sign, or the simulated explosion would not experience thereal effects of that simulated sun, simulated neon sign, or simulatedexplosion as he would not see shadows or illumination attributable tothe simulated sun, the simulated neon sign, or simulated explosion, orfeel warmth attributable to the simulated sun, the simulated neon sign,or simulated explosion.

The difficulty of this simulation of ambient light from generatedimagery is further increased when the generated imagery is connectedwith a gaming experience and/or is variable based on at least one userinput. In such an embodiment, the simulated ambient lighting is notstatic and repeatable, but rather is dynamic based on specific receiveduser inputs and the progression of the narrative and/or gameplay withinthe simulation. As used herein, the narrative of a simulation refers tothe possible events and/or experiences that are included in thesimulation. The possible events and/or experiences included in thesimulation can be tied to a timeline within the simulation, whichtimeline can be static in that it always has the same length or thetimeline can be dynamic in that it can have variable lengths.

The present disclosure provides new systems and methods for simulationof ambient light based on generated imagery. In these systems andmethods, locations and/or attributes of one or several sources ofsimulated light can be tracked and the effects of these one or severalsources of simulated light can be simulated via one or severalcontrollable light sources. These one or several controllable lightsources can include one or several projectors, practical light effects,movable lighting fixtures, heaters such as radiant heaters, or the like.

The locations and/or attributes of one or several sources of simulatedlight can include, for example, a simulated location of some or all ofthe one or several sources of simulated light, a simulated movement ofsome or all of the one or several sources of light, a color or emissionspectrum of some or all of the one or several sources of light, anintensity or brightness of some or all of the one or several sources oflight, or the like. A light solution can be generated based on thelocations and/or attributes of some or all of the one or several sourcesof light. This light solution can identify the desired output ofsimulated ambient light based on the generated imagery. This can includeattributes such as: location, movement, and/or contrast of one orseveral desired shadows; and/or location, movement, color, and/orbrightness of one or several illuminated areas.

This problem of lack of ambient light from generated imagery within asimulation can occur in a simulation of an experience, in a video gameor gaming simulation, or in an amusement park ride including generatedimagery.

II. Simulation System

With reference now to FIG. 1, a schematic illustration of one embodimentof a simulation system 100 for simulation of ambient light based ongenerated imagery is shown. The system 100 can include a processor 102.The processor 102 can be any computing and/or processing deviceincluding, for example, one or several laptops, personal computers,tablets, smartphones, servers, mainframe computers, processors, or thelike. The processor 102 can be configured to receive inputs from one orseveral other components of the system 100, to process the inputsaccording to one or several stored instructions, and to provide outputsto control the operation of one or several of the other components ofthe system 100.

In some embodiments, the processor 100 can include a game engine thatcan include a rendering engine. The game engine and the rendering enginecan together, or independently develop and/or progress the narrative ofthe simulation and/or the generated images corresponding to thatnarrative. Some or all of these images of objects can be static withrespect to a simulation sled or a user position, or some or all of theseimages of objects can be dynamic with respect to the simulation sled oruser position.

In some embodiments, some or all of these generated images can be ofobjects or effects that generate and/or reflect light. These objects caninclude, for example, one or several lights, light bulbs, or lightingfeatures, and/or one or several suns, stars, or moons. In someembodiments, these effects can include any simulated light-generatingevent such as, for example, one or several: explosions; fires orcombustion events; energy beams; and/or muzzle blasts. As referred toherein light-generating objects of a simulation include light-generatingeffects.

The system 100 can include memory 104. The memory 104 can represent oneor more storage media and/or memories for storing data, including readonly memory (ROM), random access memory (RAM), magnetic RAM, corememory, magnetic disk storage mediums, optical storage mediums, flashmemory devices and/or other machine-readable mediums for storinginformation. The term “machine-readable medium” includes, but is notlimited to portable or fixed storage devices, optical storage devices,and/or various other storage mediums capable of storing that contain orcarry instruction(s) and/or data. The memory 104 can be an integral partof the processor 102 and/or can be separate from the processor 102. Inembodiments in which the memory 104 is separate from the processor 102,the memory 104 and the processor 102 can be communicatingly linked via,for example, communications network 130. In some embodiments, thecommunications network 130 can comprise any wired or wirelesscommunication connection between the components of the simulation system100.

The memory 104 can include software code and/or instructions fordirecting the operation of the processor 102 and/or one or severaldatabases 106 containing information used by the processor 102 and/orgenerated by the processor 102. These databases include, for example, anarrative/imagery database 106-A, a sled database 106-B, and anillumination database 106-C.

The narrative/imagery database 106-A stores narrative and image data.This narrative and image data can include information and/or datarelating to the narrative and the imagery generated as part of thenarrative. Specifically, the narrative and image data is data andinformation that is used to generate the narrative and the imageryand/or sound in the narrative. This can include identification of one orseveral: objects; characters; effects; or things exisiting within thenarrative, and data or databases defining these one or several: objects;characters; effects; or things. This data or databases defining the oneor several: objects; characters; effects; or things can identifyattributes of the one or several objects: characters; effects; orthings, which attributes can define a size, a speed, movementcharacteristics, illumination characteristics, or the like. Theseillumination characteristics can characterize the illumination generatedby the associated object such as, for example, the strength of theillumination, the color of the illumination, directionality of theillumination, or the like.

The sled database 106-B can include data relating to the simulationsled, and specifically relating to the shape and/or features of thesimulation sled and/or relating to the control of the simulation sledand/or the interaction with user control features located on thesimulation sled. In some embodiments, for example, the simulation sledcan move in response to user inputs to the user control features and/oraccording to the narrative of the simulation or to events in thenarrative of the simulation. The sled database 106-B can include dataidentifying one or several features of the simulation sled that enablethe movement of the simulation sled. These features can include, forexample, one or several motors, servo motors, pneumatic or hydrauliccomponents, or the like.

The illumination database 106-C can include information relating to thecontrol of an ambient light simulator to generate simulated ambientlight corresponding to generated imagery. In some embodiments, thisinformation can identify one or several components of the ambient lightsimulator such as, for example, a projector, practical lighting, or thelike, and information identifying the simulated light creatable by thoseone or several components.

The system 100 can include the simulation sled 108. The simulation sled108 can contain one or several simulatees in, for example, a seat, arestraint system, or the like. The simulation sled 108 and/or thecomponents thereof can be communicatingly connected with the processor102 The simulation sled 108 can be movable according to the narrativeand/or according to one or several events in the narrative to, incombination with generated imagery, create the sensation of movement forthe simulatees. In some embodiments, the simulation sled 108 can bemounted on a motion base 110 which can move the simulation sled 108. Themotion base 110 can include one or several: motors; servo motors;pneumatic components; hydraulic components; or the like.

The simulation sled 108 can include one or several user controls 112.The user controls 112 can include features to provide information to theusers such as, for example, one or several displays, screens, monitors,speakers, or the like, and can include features with which the user canprovide input to the simulation sled 108. In some embodiments, thesimulation sled 108 can comprise a single set of user controls 112 foruse by a single user in interacting with the simulation, and in someembodiments, the simulation sled 108 can comprise multiple sets of usercontrols 112. In some embodiments, these multiple sets of user controlscan be redundant, and in some embodiments, these multiple sets of usercontrols can be non-redundant in that some or all of these multiple setsof user controls provide different, unique user inputs. In someembodiments, the user controls 112 can include, for example, one orseveral: wheels; levers; buttons; control sticks; pedals; switches;slides; and knobs. In some embodiments, the simulation sled 108 can moveand/or be configured to move according to control signals received fromthe processor 102 and/or the user control features.

The simulation sled 108 can include an ambient light simulator 114, alsoreferred to herein as a simulated light source, the light generator, orthe ambient light generator. The ambient light simulator 114 can beconfigured to generate electromagnetic radiation, and specifically togenerate simulated ambient light corresponding to generated imagery, andspecifically corresponding to generated imagery of one or severallight-generating and/or light reflecting objects. The ambient lightsimulator 114 can be configured to selectively illuminate at leastportions of the simulation sled 108 and/or to generate one or severalshadows in and/or on the simulation sled 108. In some embodiments, theambient light simulator 114 can be configured to generateelectromagnetic radiation to heat the simulatees in correspondence withgenerated imagery. The ambient light simulator 114 can becommunicatingly connected to the processor 102 and/or controlled by theprocessor 102, and can thus operate according to control signalsreceived from the processor 102. The ambient light simulator 114 cancomprise one or several projectors and/or practical lighting.

The ambient light generator 114 can include a light projector 116,internal lighting 118, and/or external lighting 120. In someembodiments, all or portions of the ambient light generator 114 can bestatic with respect to the simulation sled 108, and in some embodiments,all or portions of the ambient light generator 114 can move with respectto the simulation sled 108. The light projector 116 can be locatedwithin the simulation sled 108 or can be located outside of thesimulation sled 108. The light projector 116 can be controlled by theprocessor 102 to, in real-time, project light and shadows onto all orportions of the simulation sled 108 such as, for example, on the usercontrols 112 of the simulation sled. The processor 102 can control thelight projector 116 to project light having an intensity, color,location, and/or movement corresponding to the one or several objects inthe generated imagery for which the ambient light is simulated.

The internal lighting 118 can comprise one or several fixed lightingfeatures located within the simulation sled 108. The internal lighting118 can include, for example, lighting features that are configured toilluminate multiple portions of the interior of the simulation sled 108such as, for example, cast a colored light over all of the interior ofthe simulation sled 108. The internal lighting 118 can include lightingfeatures that are configured to illuminate a single feature or a singleset of features of the simulation sled 108 such as, for example, one orseveral lights associated with one or several user control features suchas one or several: buttons; knobs; or the like. In some embodiments, forexample, one or several lights associated with one or several usercontrol features can be configured to emphasize the ambient illuminationof those one or several user control features in correspondence with thegenerated imagery.

The external lighting 120 can include one or several lights and/orprojectors that are configured to illuminate the simulation sled 108 togenerate, in real-time with generated imagery, simulated shadows. Insome embodiments, the external lighting 120 can be movable with respectto the simulation sled 108 to simulate, for example, relative movementof the object in the generated imagery with respect to the simulationsled 108. In some embodiments, at least some of the internal lighting118 and/or the external lighting 120 can comprise practical lighting.

The system 100 can include an image generator 122, also referred toherein as a simulation display. The image generator 122 can becommunicatingly connected with the processor 102 and can comprise one orseveral features configured to generate images according to one orseveral control signals received from the processor 102. The imagegenerator 122 can comprise one or several screens, displays, monitors,projectors, illuminators, lasers, or the like. In some, the one orseveral screens, displays, monitors, projectors, illuminators, and/orlasers forming the image generator 122 can be connected to thesimulation sled 108 such that they move with the simulation sled 108, orthe one or several screens, displays, monitors, projectors,illuminators, and/or lasers forming the image generator 122 can beseparated from the simulation sled 108 so as to not move with thesimulation sled 108. In some embodiments, the one or several screens,displays, monitors, projectors, illuminators, and/or lasers forming theimage generator 122 can be wholly or partially: flat; curved; domed;arched; and/or angled. The generated images can be viewable by thesimulatee from the simulation sled 108.

With reference to FIG. 2, a schematic illustration of a simulationenvironment 200 is shown. The simulation environment 200 can include allor portions of the system 100. Specifically, as seen in FIG. 2, thesimulation environment 200 includes the simulation sled 108, the motionbase 110, the user controls 112, and the light generator 114. Thesimulation sled 108 shown in FIG. 2, further includes a body 202including windows 204 and opaque structural features 206 such as, forexample, a roof, pillars, posts, and/or window frames or framing. Thesimulation sled 108 can further include a passenger area 208 that caninclude one or several seats, restraints, or the like, and one orseveral accessory features 210 which can be, for example, one or severalsimulated weapons such as a simulated firearm, a simulated laser, asimulated missile, a simulated bomb, or the like.

The simulation environment 200 can include the image generator 122. Theimage generator 122 can include a screen 212 and at least one projector214. The screen 212 can comprise a variety of shapes and sizes and canbe made from a variety of materials. In some embodiments, the screen 212can be flat, and in some embodiments, the screen 212 can be angled,curved, domed, or the like. In some embodiments, the screen 212 iscurved and/or domed to extend around all or portions of the simulationsled 108, and specifically is curved and/or domed to extend aroundportions of the simulation sled 108 so that a passenger looking out ofthe simulation sled 108 sees the screen.

One or several projectors 214 can project images onto the screen 212.These projectors 214 can be located on the same side of the screen 212as the simulation sled 108 or on the opposite side of the screen 212 asthe simulation sled. The projectors 214 can be controlled by theprocessor 102.

III. Simulation Sled

With reference now to FIG. 3, an illustration of one embodiment of thepassenger area 208 of the simulation sled 108 is shown. The simulationsled 108 includes the user controls 112 and the light generator 114. Thelight generator 114 can include the light projector 116 and the internallighting 118. The user controls 112 can include one or several: buttons302; displays 304, including screens, monitors, touchscreens, or thelike; pedals 306; steering wheels 308; control sticks 310; or the like.In some embodiments, some or all of the user controls 112 can beredundant so that multiple users can control the same functionality ofthe simulation sled 108 and/or of the simulation, and in someembodiments, some or all of the user controls 112 can be non-redundantso that different users can control different functionality of thesimulation sled 108.

In some embodiments, some or all of the user controls 112 can beilluminated. The illuminated user controls 112 can form part of theinternal lighting 118 of the simulation sled 108 when the illuminationof the illuminated user controls 112 is controllable to contribute tosimulated ambient light of generated imagery. In some embodiments, someor all of the user controls 112 can include an illumination feature 312that can extend around all or portions of the perimeter of the usercontrols 112, and specifically around all or portions of the buttons 302or displays 304. In some embodiments, some or all of the user controls112 can have interior illumination that can cause all or portions ofsaid user controls 112 to be illuminated and/or glow. In someembodiments, the illumination feature 312 and/or the interiorillumination of the user controls 112 can vary the color and/orbrightness of the associated user controls 112.

As seen in FIG. 3, the simulation sled 108 can include a seat 314,accessory features 210 which comprise a left accessory 210-A and a rightaccessory 210-B, and the body 202 including windows 204 and opaquestructural features 206. In some embodiments, the light generator 114can generate simulated ambient lighting, and specifically simulatedshadows based on the body 202 including the windows 204 and the opaquestructural features 206 and generated imagery. In some embodiments, thegeneration of such shadows can include the generation of data indicativeof the body 202 including the windows 204 and the opaque structuralfeatures 206 of the simulation sled 108 that can be accessible by theprocessor 102. This data can be, for example, stored in the memory 104,and specifically in the sled database 106-B and/or in the illuminationdatabase 106-C.

IV. Simulation of Ambient Light

With reference now to FIG. 4, a flowchart illustrating one embodiment ofa process 400 for simulation of ambient light based on generated imageryis shown. The process 400 can be performed by all or portions of thesimulation system 100, and can be used in generating, in real-time,simulated ambient light and/or shadows based on imagery generated by theimage generator 122. The process 400 begins at block 401, wherein asimulation is launched. In some embodiments, the launch of thesimulation can include the generation and/or display of one or severalimages as part of the narrative of the simulation. In some embodiments,the launch of the simulation can include the loading of simulation datainto the gaming engine and/or rendering engine of the processor 102,and/or loading any user data relevant to the simulation into the gamingengine and/or the rendering engine of the processor 102. The simulationcan be launched for the simulation sled 108 by the processor.

After the simulation has been launched, the process 400 proceeds toblock 402, wherein a user input is received. In some embodiments, theuser input can be received at the simulation sled 108 via userinteraction with one or several of the user controls 112. Thisinteraction can include, for example, pressing one or several buttons,manipulating one or several knobs, levers, control sticks, or toggles,depressing one or several pedals, and/or turning one or several steeringwheels. These interactions with the user controls 112 can control themovement of the simulation sled 108 within the simulation and/or causean effect within the simulation such as, for example, the firing ordischarging of a weapon in the form of the accessory features 210 of thesimulation sled 108. In some embodiments, the discharging of a weapon inthe form of the accessory features 210 can cause an effect in thesimulation such as a transient lighting effect that can be caused by themuzzle flash of the discharged weapon, the traveling of an energy beamor projectile through the simulation, and/or an explosion or fire causedby the projectile and/or energy beam. In some embodiments, the dischargeof the weapon in the form of the accessory feature 210 can result in thedamage to and/or destruction of one or several objects within thesimulation. The user interaction with these one or several user controls112 can result in the generation of one or several electrical signalswhich can be communicated to the processor.

After the user input has been received, the process 400 proceeds toblock 404, wherein one or several imagery control signals are generated.In some embodiments, for example, these one or several imagery controlsignals can be provided to the image generator 122 to control the imagegenerator 122 to cause the display of one or several images topassengers on the simulation sled 108. Specifically, these one orseveral imagery control signals can control the image generator togenerate imagery comprising a simulated light source. The one or severalcontrol signals can be generated by the game engine and/or the rendingengine of the processor 108 in response to the electrical signalscorresponding to the user input and the progression through thesimulation and/or through the narrative of the simulation.

At block 406 of the process 400, one or several motion base controlsignals are generated. In some embodiments, these one or several motionbase control signals can be generated by the server and particularly bythe gaming engine and/or the rendering engine. These one or severalmotion base control signals can control the motion base 110 to generatedone or several desired movements of the simulation sled 108. In someembodiments, the one or several motion base control signals can begenerated in response to the electrical signals corresponding to userinput and the progression through the simulation and/or through thenarrative of the simulation.

At block 408 of the process 400, the effect of the imagery generated bythe imagery control signals on the simulation sled 108 is determined. Insome embodiments, for example, this can include identifying portions ofthe to be generated imagery corresponding to light-generating objects,and retrieving attribute data for these objects. In some embodiments,this attribute data can include data characterizing one or severalillumination characteristics of the objects in the to be generatedimagery including, for example, intensity, position, directionality,and/or color of the illumination. After the attribute data has beenretrieved, information characterizing the distance of the objects in theto be generated imagery from the simulation sled 108 and/or the relativemotion of the objects in the to be generated imagery with respect to thesimulation sled 108 can be retrieved.

In some embodiments, the processor 102, and particularly the game engineand/or the rendering engine can utilize the attribute data and otherretrieved data to determine the effect of the objects in the to begenerated imagery on the simulation sled 108. In some embodiments, thiscan include, for example, determining one or several illuminationintensities of simulated light impinging on the simulation sled 108, oneor several instantaneous directions of illumination of the simulationsled 108 and/or directions of illumination of the simulation sled 108over time, and/or one or several colors of illumination of thesimulation sled 108. In some embodiments, the identified effect of theto be generated imagery of the simulation sled 108 can include dynamicsimulated shadows cast based on the movement of the simulated lightsource with respect to the simulation sled 108 and at least one featureof the simulation sled 108 such as, for example, at least one window 204and/or at least one opaque structural feature 206.

In some embodiments, determining the effect on the simulation sled 108can include the balancing of one or several light sources. In someembodiments, for example, multiple light-generating and/or reflectingobjects can be simultaneously simulated in the to be generated imagery.In such embodiments, the effect of one or several of these multiplelight-generating and/or reflecting objects can be mitigated and washedout by one or several others of these multiple light-generating and/orreflecting objects having light of significantly higher intensity. Thus,in some embodiments, the determining of the effect on the simulationsled 108 can include identifying one or several dominant light sources.In some embodiments, these one or several dominant light sources can beidentified based on the intensity of light at the simulation sled 108from those dominant light sources as compared to others of thesemultiple light-generating and/or reflecting objects. In someembodiments, the determining of the effect on the simulation sled 108can be simplified by eliminating the effect of non-dominant lightsources, whereas in some embodiments, the determining of the effect onthe simulation sled 108 can include the effect of these non-dominantlight sources.

After the effect on the simulation sled 108 has been identified, theprocess 400 proceeds to block 410, wherein one or several lightsimulator control signals are generated. In some embodiments, these oneor several light control signals can control the generation ofillumination and/or shadows on and/or within the simulation sled 108 tosimulate the ambient light generated by the objects in the to begenerated imagery. These objects in the to be generated imagery can bestatic with respect to the simulation sled 108 and/or dynamic withrespect to the simulation sled 108. In some embodiments, the objects canmove with respect to the simulation sled 108 based on inputs receivedfrom the user controls 112. In some embodiments, the light simulatorcontrol signals can be generated so as to cause the light simulator 114to simulate the effect on the simulation sled 108 identified in block408.

After the light simulator control signals have been generated, theprocess 400 proceeds to block 412, wherein the imagery corresponding tothe generated imagery control signals is generated and/or to block 414,wherein the simulated effect is generated on the simulation sled 108 viathe simulation of ambient light corresponding to the generated imagery.In some embodiments, this imagery is generated by sending the imagerycontrol signals from the processor 102 to the image generator 122. Insome embodiments, the ambient light of the generated imagery can besimulated by the controlling of the light simulator 114 to generate oneor several illuminated portions of the simulation sled 108 and/or one orseveral shadows on or in the simulation sled 108 by sending the lightsimulator control signals from the processor 102 to the light simulator114. In some embodiments, the step of block 412 can be performedsimultaneous with the step of block 414.

After blocks 412 and 414, the process 400 proceeds to decision step 416,wherein it is determined whether to terminate the simulation. In someembodiments, this determination can be made by the processor 102 bydetermining if the narrative of the simulation has been completed, ifthe allocated time for the simulation is reached and/or passed, if oneor several objectives of the simulation have been attained, or the like.If it is determined that the simulation is not to be terminated, thenthe process 400 proceeds to decision step 418, wherein it is determinedif there is an additional user input. In some embodiments, this caninclude determining whether further electrical signals corresponding touser inputs at the user controls 112 have been received. If there havebeen additional user inputs, then the process 400 proceeds to block 402and continues as outlined above. If there have been no additional userinputs, then the process 400 proceeds to block 404 and continues asoutlined above.

Returning again to decision step 416, if it is determined to terminatethe simulation, then the process 400 proceeds to block 420, wherein oneor several simulation termination control signals are generated. In someembodiments, for example, these one or several simulation controlsignals can direct one or several features of the simulation system 100to provide an indication of the termination of the simulation. Theseindications can include, for example, undimming of house lights, playingmusic indicative of the end of the simulation, rolling credits,releasing passenger restraints, or the like. After the simulationtermination control signals have been generated, the process 400proceeds to block 422, wherein the simulation is terminated. In someembodiments, the termination of the simulation can include the providingof the simulation termination control signals to the components of thesimulation system 100 affected by the simulation termination.

V. Computer System

FIG. 5 shows a block diagram of computer system 1000 that is anexemplary embodiment of the processor 102 and can be used to implementmethods and processes disclosed herein. FIG. 5 is merely illustrative.Computer system 1000 may include familiar computer components, such asone or more one or more data processors or central processing units(CPUs) 1005, one or more graphics processors or graphical processingunits (GPUs) 1010, memory subsystem 1015, storage subsystem 1020, one ormore input/output (I/O) interfaces 1025, communications interface 1030,or the like. Computer system 1000 can include system bus 1035interconnecting the above components and providing functionality, suchas connectivity and inter-device communication.

The one or more data processors or central processing units (CPUs) 1005execute program code to implement the processes described herein. Theone or more graphics processor or graphical processing units (GPUs) 1010execute logic or program code associated with graphics or for providinggraphics-specific functionality. Memory subsystem 1015 can storeinformation, e.g., using machine-readable articles, information storagedevices, or computer-readable storage media. Storage subsystem 1020 canalso store information using machine-readable articles, informationstorage devices, or computer-readable storage media. Storage subsystem1020 may store information using storage media 1045 that can be anydesired storage media.

The one or more input/output (I/O) interfaces 1025 can perform I/Ooperations and the one or more output devices 1055 can outputinformation to one or more destinations for computer system 1000. One ormore input devices 1050 and/or one or more output devices 1055 may becommunicatively coupled to the one or more I/O interfaces 1025. The oneor more input devices 1050 can receive information from one or moresources for computer system 1000. The one or more output devices 1055may allow a user of computer system 1000 to view objects, icons, text,user interface widgets, or other user interface elements.

Communications interface 1030 can perform communications operations,including sending and receiving data. Communications interface 1030 maybe coupled to communications network/external bus 1060, such as acomputer network, a USB hub, or the like. A computer system can includea plurality of the same components or subsystems, e.g., connectedtogether by communications interface 1030 or by an internal interface.

Computer system 1000 may also include one or more applications (e.g.,software components or functions) to be executed by a processor toexecute, perform, or otherwise implement techniques disclosed herein.These applications may be embodied as data and program code 1040. Suchapplications may also be encoded and transmitted using carrier signalsadapted for transmission via wired, optical, and/or wireless networksconforming to a variety of protocols, including the Internet.

The above description of exemplary embodiments of the invention has beenpresented for the purposes of illustration and description. It is notintended to be exhaustive or to limit the invention to the precise formdescribed, and many modifications and variations are possible in lightof the teaching above. The embodiments were chosen and described inorder to best explain the principles of the invention and its practicalapplications to thereby enable others skilled in the art to best utilizethe invention in various embodiments and with various modifications asare suited to the particular use contemplated.

What is claimed is:
 1. A system for simulation of ambient light based ongenerated imagery, the system comprising: a simulation sled comprising aplurality of user control features; a simulation display configured todisplay generated imagery viewable from the simulation sled; an ambientlight simulator configured to selectively illuminate at least portionsof the simulation sled; and a processor in communicating connection withthe simulation sled, the simulation display, and the ambient lightsimulator, wherein the processor is configured to: control thesimulation display to generate imagery comprising a simulated lightsource; identify an effect of the generated imagery on the simulationsled; and control the ambient light simulator to selectively illuminateat least portions of the simulation sled according to the identifiedeffect of the simulated light source.
 2. The system of claim 1, whereinthe ambient light simulator is controlled to selectively illuminate theat least portions of the simulation sled simultaneous with thegeneration of imagery corresponding to the light source.
 3. The systemof claim 1, wherein the simulated light source is static with respect tothe simulation sled.
 4. The system of claim 1, wherein the simulatedlight source moves with respect to the simulation sled.
 5. The system ofclaim 4, wherein the movement of the simulated light source with respectto the simulation sled varies based on inputs received from the usercontrol features.
 6. The system of claim 5, wherein the identifiedeffect comprises dynamic simulated shadows cast based on the movement ofthe simulated light source with respect to the simulation sled and atleast one feature of the simulation sled.
 7. The system of claim 6,wherein simulated light source comprises at least one of: a projector;and practical lighting.
 8. The system of claim 1, wherein the ambientlight simulator moves with respect to the simulation sled.
 9. The systemof claim 1, wherein the ambient light simulator is static with respectto the simulation sled.
 10. The system of claim 1, wherein theidentified effect comprises at least one of: a color; an intensity; anda position.
 11. A method of simulation of ambient light based ongenerated imagery, the method comprising: receiving at least one inputfrom a user control feature located on a simulation sled; controlling asimulation display to generate imagery based on the received at leastone input, wherein the generated imagery is viewable from the simulationsled, and wherein the generated imagery comprises a simulated lightsource; identifying an effect of the generated imagery on the simulationsled; and controlling an ambient light simulator to selectivelyilluminate at least a portion of the simulation sled according to theidentified effect of the simulated light source.
 12. The method of claim11, wherein the ambient light simulator is controlled to selectivelyilluminate the at least portions of the simulation sled simultaneouswith the generation of imagery corresponding to the light source. 13.The method of claim 11, wherein the simulated light source is staticwith respect to the simulation sled.
 14. The method of claim 11, whereinthe simulated light source moves with respect to the simulation sled.15. The method of claim 14, wherein the movement of the simulated lightsource with respect to the simulation sled varies based on inputreceived from the user control feature.
 16. The method of claim 15,wherein the identified effect comprises dynamic simulated shadows castbased on the movement of the simulated light source with respect to thesimulation sled and at least one feature of the simulation sled.
 17. Themethod of claim 16, wherein the simulated light source comprises atleast one of: a projector; and practical lighting.
 18. The method ofclaim 11, wherein the ambient light simulator moves with respect to thesimulation sled.
 19. The method of claim 11, wherein the ambient lightsimulator is static with respect to the simulation sled.
 20. The methodof claim 11, wherein the identified effect comprises at least one of: acolor; an intensity; and a position.